This invention relates to television systems and, more particularly, to color space conversion.
The color space Y, Cr and Cb have different representations in Standard Definition (SD) television (TV) and High Definition (HD) TV. Specifically, color space is defined in the International Telecommunications Union (ITU) Recommendation ITU-R BT.601. It is noted that Y is a luma component and that Cr and Cb are color difference signals, typically associated with SDTV. YPrPb are similar color space values, typically associated with HDTV. RGB are color space values for red (R), green (G) and blue (B), respectively.
Proper color space conversions are required in, for example, up-converters where SD images are converted to HD images. To this end, standards have been promulgated to specify these conversions. Specifically, the Society of Motion Picture and TV Engineers (SMPTE) has defined such standards, namely, SMPTE125M specifies a matrix converting RGB values to YCrCb values and their valid region for SDTV, and SMPTE274M specifies the conversion for HDTV.
Prior arrangements are known which convert the SD YCrCb values into HD YPrPb values. One such prior arrangement is shown in FIG. 1, which includes matrix multiplier 101 that generates tentative RGB values in response to the YCrCb SD values. These tentative RGB values may be invalid in that one or more of them is outside a prescribed color space region. Consequently, unit 102 is needed to project the invalid tentative RGB values to valid RGB color space within the prescribed valid region. The resulting valid RGB values are supplied to matrix multiplier 103, which yields the desired HD YPrPb values.
A problem with such prior arrangements is their use of the multiple matrix multipliers and/or lookup tables to realize the matrix multiplications required by the SMPTE standards noted above. Some implementations also require one or more division steps, which are very undesirable, especially in hardware implementations. In hardware implementations, for example, as an integrated circuit, such operations take up significant chip space, while in software implementations the processes are long and time consuming, thereby requiring more powerful high speed processors to effect them rapidly.
These and other problems and limitations are overcome in an embodiment of the invention in converting from a first image definition scheme to a second image definition scheme by utilizing only one step of matrix multiplication and by determining whether determined RGB values are in a valid RGB region and, if not, generating a first modification factor to bring the RGB vector onto or in close proximity to the boundary of the valid RGB region. Then, the first modification factor is employed to modify in a prescribed manner the converted chroma values.
In a specific embodiment of the invention, only a single matrix multiplication is employed and the otherwise additional required multiplication and/or division steps are realized by additions and/or subtractions and by employing a prescribed iterative process to bring the RGB values into or close to the valid RGB color space region. The converted chroma values are also modified by associated second modification factors also generated in the iteration process.
In another specific embodiment of the invention, the converted chroma values are modified or not during an iteration depending upon whether a factor corresponding to and related to R0, G0, B0 is within a specific color space region or not. If R0, G0, B0 are within the specific color space region, the chroma values are modified by the associated second modification factors, the second modification factors are adjusted and the process is iterated. If R0, G0, B0 are other than within the specific color space region, the chroma values are not modified, the second modification factors are adjusted and the process is iterated. A prescribed number of iterations are used.